<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport"
    content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>

<body>


  <!-- accept:推荐 作用 不能限制用户选择别的文件 -->
  <input type="file" multiple accept="image/*" />
  <h2>直接通过FormData</h2>
  <input class="inpt" type="file" accept="image/*">
  <img src="" alt="" />
  <button>上传</button>
  <p></p>
  <script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
  <script>
    document.querySelector('input').onchange = (e) => {
      console.log(e);
      //e.target:触发的dom元素 input框
      //e.target.files:伪数组 上传的文件的列表
      //e.target.files[0]:拿到第一个文件
      console.log(e.target.files[0])
    }
    // 1.点击按钮上传图片
    document.querySelector('button').addEventListener('click', () => {
      // 2.实例化formData 默认是空的
      const data = new FormData()
      // 3. 追加数据
      // console.log(document.querySelector('input').files)
      // console.log(document.querySelector('input').files[0])
      // 获取到用户选择的文件
      const img = document.querySelector('.inpt').files[0]
      // formData中有数据了 key:value
      // key==avatar
      // value ==选择的图片
      data.append('avatar', img)
      // data.append('avatar', e.target.files[0])

      axios({
        url: 'http://ajax-api.itheima.net/api/file',
        method: 'post',
        data
      }).then(res => {
        console.log('res:', res)
        console.log(res.data.message)
        // 渲染出来
        document.querySelector('p').innerHTML = res.data.message
        console.log(res.data.data.url)
        document.querySelector('img').src = res.data.data.url

      })
    })
  </script>
</body>

</html>